/*********************************************************************
* File: debug.h
*
* \brief Useful functions for debugging.
*
* \author Instituto Superior Tecnico de Lisboa, Portugal
* \author Technical University of Lisbon, Portugal
* 
* \author Agentes Autonomos e Sistemas Multiagente
* \author Autonomous Agents and Multiagent Systems
* 
* \version	1.0
* \date		2006/2007
*********************************************************************/
#include "../engine.h"

/**
* Uncomment this macro to log all debug prints to a text file in 
* the 'addons/aasmCsAgents{AASM_GROUP_ID}/logs/' directory
**/
//#define DEBUGLOG	1;

//=============================================================================
// Global variables
//=============================================================================
/** 
* \brief Log file. 
**/
extern FILE* g_log;

namespace util{ namespace debug {
//=============================================================================
// Function prototypes
//=============================================================================
void initialize();
void conclude();

void log(const char* msg);
void log(const char* prefix, const char* msg);
//void logWritePrefix();
void logWrite(const char* msg);
void logWriteLn(const char* msg);
void logWriteNewline();
void logWrite(int number);

void printToServer(const char* msg);
void printToMessageBox(const char* title, const char* msg);
void printToClient(edict_t* pEdict, PRINT_TYPE ptype, const char *msg);
void alertMessage(ALERT_TYPE atype, char *msg);
}}